package com.dz.tool.Dao.Slave;

import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.dz.tool.Entity.WebMigrateOtoLog;
import com.dz.tool.Vo.OracleField;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

@DS("db2")
@Mapper
public interface SlaveOracleMapper {

    // 执行Oracle语句
    void creatOracle(@Param("sql") String sql);

    List<Map<String,Object>> creatOracleMap(@Param("sql") String sql);

    // 查询用户所属的表空间
    String selectTableSpace(@Param("user")String user);

    // 查看指定表是否存在
    int selectTableNameOnDataBase(@Param("dataBaseName")String dataBaseName,@Param("tableName")String tableName);

    // 根据表名获取字段数据
    List<OracleField> selectTableNameOnCNAndTP(@Param(Constants.WRAPPER) Wrapper<Object> wrapper);

    // 根据表名获取数据量
    Integer selectDataCount(@Param("tableName")String tableName);

    //存日志
    void insertWebMigrateOtoLog(@Param("webMigrateOtoLog") WebMigrateOtoLog webMigrateOtoLog);



}
